Simulation 1

Data structure: \(O = (W, A, Z, Y)\)

  • U - exogenous variables
  • W - baseline covariate that is a measure of body condition
  • A - treatment level based on W, continuous between 0 and 5
  • Z - intermediate curve based on W and A
  • Y - outcome, indicator of an event ?

Underlying data generating process, \(P_{U,X}\)

  • Exogenous variables:
    • \(U_A \sim Normal(\mu=0, \sigma^2 = 1^2)\)
    • \(U_A \sim Normal(\mu=0, \sigma^2 = 2^2)\)
    • \(U_Z \sim Uniform(min = 0, max = 1)\)
    • \(U_Y \sim Uniform(min = 0, max = 1)\)
  • Structural equations F and endogenous variables:
    • \(W = U_W\)
    • \(A = bound(2 - 0.5W + U_A, min=0, max=5)\)
    • \(Z = \mathbf{I}[U_Z < expit(2-W-A)]\)
    • \(Y = \mathbf{I}[U_Y < expit(- 8 + W + 5A + Z - 0.5WA)]\)
##        W                   A                Z                Y         
##  Min.   :-3.870462   Min.   :0.0000   Min.   :0.0000   Min.   :0.0000  
##  1st Qu.:-0.667509   1st Qu.:0.5841   1st Qu.:0.0000   1st Qu.:0.0000  
##  Median :-0.004373   Median :1.9706   Median :0.0000   Median :1.0000  
##  Mean   : 0.003462   Mean   :2.1027   Mean   :0.4897   Mean   :0.5941  
##  3rd Qu.: 0.677507   3rd Qu.:3.3817   3rd Qu.:1.0000   3rd Qu.:1.0000  
##  Max.   : 3.922240   Max.   :5.0000   Max.   :1.0000   Max.   :1.0000
## Summary of A given W < -1:
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.363   2.818   2.744   4.300   5.000
## Summary of A given -1 < W <= 0:
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.8855  2.2314  2.2788  3.5417  5.0000
## Summary of A given 0 < W <= 1:
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.4088  1.7284  1.9144  3.0964  5.0000
## Summary of A given 1 < W:
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   0.000   1.168   1.482   2.444   5.000

n = 200

CV HAL

results

## CV selected lambda (from one sample): 0.00669857527625325

1000 repetition

## The average of CV selected lambdas (from 1000 sample): 0.00805702593800398
## z=1:

## z=0:

Globally Undersmoothed HAL

results

## Undersmoothed lambda: 0.0015646006085061
##  which is 0.233572146909012 * lambda_CV

1000 repetition

## The average of unsersmoothed lambda (from 1000 sample): 0.00198368858974991
##  which is 0.250550122058336 * the average of 1000 lambda_CV
## z=1:

## z=0:

CV vs Undersmoothing

## z=1:

## z=0:

Oevr a grid of lambda scalers

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.6495]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.6826]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.7157]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.7488]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.7819]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.8150]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.8481]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.8812]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.9143]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.9474]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                 grob
## 1 1 (2-3,2-3) arrange       gtable[layout]
## 2 2 (4-5,1-2) arrange       gtable[layout]
## 3 3 (4-5,3-4) arrange       gtable[layout]
## 4 4 (6-7,1-2) arrange       gtable[layout]
## 5 5 (6-7,3-4) arrange       gtable[layout]
## 6 6 (3-3,4-4) arrange    gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.9805]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.10136]

n = 500

CV HAL

results

## CV selected lambda (from one sample): 0.00304915463126771

1000 repetition

## The average of CV selected lambdas (from 1000 sample): 0.00377951842511137
## z=1:

## z=0:

Globally Undersmoothed HAL

results

## Undersmoothed lambda: 0.000239285449803067
##  which is 0.0784759970351461 * lambda_CV

1000 repetition

## The average of unsersmoothed lambda (from 1000 sample): 0.000976521442732073
##  which is 0.257085741491311 * the average of 1000 lambda_CV
## z=1:

## z=0:

CV vs Undersmoothing

## z=1:

## z=0:

Oevr a grid of lambda scalers

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.16537]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.16868]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.17199]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.17530]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.17861]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.18192]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.18523]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.18854]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.19185]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.19516]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.19847]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.20178]

n = 1000

CV HAL

results

## CV selected lambda (from one sample): 0.00191686388481646

1000 repetition

## The average of CV selected lambdas (from 1000 sample): 0.00202632875883968
## z=1:

## z=0:

Globally Undersmoothed HAL

results

## Undersmoothed lambda: 0.000216382858638274
##  which is 0.112883789168469 * lambda_CV

1000 repetition

## The average of unsersmoothed lambda (from 1000 sample): 0.00052662050700697
##  which is 0.247063528738697 * the average of 1000 lambda_CV
## z=1:

## z=0:

CV vs Undersmoothing

## z=1:

## z=0:

Oevr a grid of lambda scalers

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.26579]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.26910]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.27241]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.27572]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.27903]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.28234]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.28565]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.28896]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.29227]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.29558]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.29889]

## TableGrob (7 x 4) "arrange": 7 grobs
##   z     cells    name                  grob
## 1 1 (2-3,2-3) arrange        gtable[layout]
## 2 2 (4-5,1-2) arrange        gtable[layout]
## 3 3 (4-5,3-4) arrange        gtable[layout]
## 4 4 (6-7,1-2) arrange        gtable[layout]
## 5 5 (6-7,3-4) arrange        gtable[layout]
## 6 6 (3-3,4-4) arrange     gtable[guide-box]
## 7 7 (1-1,1-4) arrange text[GRID.text.30220]